<script setup>
import { reactive, getCurrentInstance } from 'vue'
import { useRouter } from 'vue-router';

const router = useRouter()

// 获取当前实例
const {proxy} = getCurrentInstance()

// 表单数据
const form = reactive({
  userName: '',
  passWord: '',
})

// 表单提交事件
const onSubmit = async () => {
  const {data} = await proxy.$api.login(form)
  if(data.code === 10000) {
    // 保存token
    localStorage.setItem('h5_token', data.data.token)
    // 保存用户信息
    localStorage.setItem('h5_user', JSON.stringify(data.data.userInfo))
    router.push('/')
  }
}
</script>

<template>
  <h1 style="text-align: center;">用户登录</h1>
  <van-form @submit="onSubmit">
    <van-cell-group inset>
      <van-field
        v-model="form.userName"
        name="用户名"
        label="用户名"
        placeholder="用户名"
        :rules="[{ required: true, message: '请填写用户名' }]"
      />
      <van-field
        v-model="form.passWord"
        type="password"
        name="密码"
        label="密码"
        placeholder="密码"
        :rules="[{ required: true, message: '请填写密码' }]"
      />
    </van-cell-group>
    <div style="margin: 16px">
      <van-button round block type="primary" native-type="submit">
        提交
      </van-button>
    </div>
  </van-form>
</template>

<style scoped lang="less">

</style>
